2005-04-05 Matthias Clasen <mclasen@redhat.com>
+ * gtk/gtkcomboboxentry.c (gtk_combo_box_entry_grab_focus):
+ * gtk/gtkcombobox.c (gtk_combo_box_grab_focus): Implement
+ grab_focus for GtkComboBox and GtkComboBoxEntry. (#171912,
+ Gustavo Carneiro)
+
* gtk/gtkicontheme.c: Store icon caches along with the
mtimes of the toplevel directories. The previous
mechanism of a hashtable-per-theme caused duplicate icon
2005-04-05 Matthias Clasen <mclasen@redhat.com>
+ * gtk/gtkcomboboxentry.c (gtk_combo_box_entry_grab_focus):
+ * gtk/gtkcombobox.c (gtk_combo_box_grab_focus): Implement
+ grab_focus for GtkComboBox and GtkComboBoxEntry. (#171912,
+ Gustavo Carneiro)
+
* gtk/gtkicontheme.c: Store icon caches along with the
mtimes of the toplevel directories. The previous
mechanism of a hashtable-per-theme caused duplicate icon
2005-04-05 Matthias Clasen <mclasen@redhat.com>
+ * gtk/gtkcomboboxentry.c (gtk_combo_box_entry_grab_focus):
+ * gtk/gtkcombobox.c (gtk_combo_box_grab_focus): Implement
+ grab_focus for GtkComboBox and GtkComboBoxEntry. (#171912,
+ Gustavo Carneiro)
+
* gtk/gtkicontheme.c: Store icon caches along with the
mtimes of the toplevel directories. The previous
mechanism of a hashtable-per-theme caused duplicate icon
GParamSpec *spec);
static void gtk_combo_box_state_changed (GtkWidget *widget,
- GtkStateType previous);
+ GtkStateType previous);static void gtk_combo_box_grab_focus (GtkWidget *widget);
static void gtk_combo_box_style_set (GtkWidget *widget,
GtkStyle *previous);
static void gtk_combo_box_button_toggled (GtkWidget *widget,
widget_class->expose_event = gtk_combo_box_expose_event;
widget_class->scroll_event = gtk_combo_box_scroll_event;
widget_class->mnemonic_activate = gtk_combo_box_mnemonic_activate;
+ widget_class->grab_focus = gtk_combo_box_grab_focus;
widget_class->style_set = gtk_combo_box_style_set;
widget_class->state_changed = gtk_combo_box_state_changed;
return TRUE;
}
+static void
+gtk_combo_box_grab_focus (GtkWidget *widget)
+{
+ GtkComboBox *combo_box = GTK_COMBO_BOX (widget);
+
+ gtk_widget_grab_focus (combo_box->priv->button);
+}
+
static void
gtk_combo_box_destroy (GtkObject *object)
{
return combo->priv->focus_on_click;
}
+
#define __GTK_COMBO_BOX_C__
#include "gtkaliasdef.c"
gpointer user_data);
static gboolean gtk_combo_box_entry_mnemonic_activate (GtkWidget *entry,
gboolean group_cycling);
+static void gtk_combo_box_entry_grab_focus (GtkWidget *widget);
static void has_frame_changed (GtkComboBoxEntry *entry_box,
GParamSpec *pspec,
gpointer data);
widget_class = (GtkWidgetClass *)klass;
widget_class->mnemonic_activate = gtk_combo_box_entry_mnemonic_activate;
+ widget_class->grab_focus = gtk_combo_box_entry_grab_focus;
combo_class = (GtkComboBoxClass *)klass;
combo_class->get_active_text = gtk_combo_box_entry_get_active_text;
return TRUE;
}
+static void
+gtk_combo_box_entry_grab_focus (GtkWidget *widget)
+{
+ GtkComboBoxEntry *entry_box = GTK_COMBO_BOX_ENTRY (widget);
+
+ gtk_widget_grab_focus (entry_box->priv->entry);
+}
+
+
/* convenience API for simple text combos */